目標
- 學習 QFileDialog 常用的指令
-
getOpenFileName
-
getOpenFileNames
-
getExistingDirectory
-
getSaveFileName
1. getOpenFileName 和 getOpenFileNames
-
getOpenFileName
: 打開一個文件選擇對話框,讓使用者選擇要開啟的文件,並返回選擇的文件路徑和文件類型。使用方法為 getOpenFileName(self, "標題", "文件對話框的起始路徑", "允許選擇的文件類型")
。
# 創建一個按鈕,並設定當前資料夾為起始位置,只能選擇.py檔和音頻文件mp3、mp4
btn1 = QPushButton("選擇文件",self)
btn1.clicked.connect(lambda:print(QFileDialog.getOpenFileName(self,"(標題)選擇文件",".","所有文件(*.py);;音頻文件(*.mp3 *.mp4)")))
-
getOpenFileNames
: 打開一個文件選擇對話框,讓使用者選擇多個文件,並返回所選文件的路徑列表和文件類型。使用方法與 getOpenFileName 相同,唯一區別是 getOpenFileName
只能選擇一個文件,而 getOpenFileNames
可以選擇多個文件。
btn2 = QPushButton("選擇文件(多)",self)
btn2.clicked.connect(lambda:print(QFileDialog.getOpenFileNames(self,"(標題)選擇文件",".","所有文件(*.py);;音頻文件(*.mp3 *.mp4)")))
2. getExistingDirectory
-
getExistingDirectory
: 打開一個對話框,讓使用者選擇現有的目錄,並返回選擇的文件夾路徑。使用方法為 getExistingDirectory(self, "標題", "文件對話框的起始路徑")
。
# 創建一個按鈕,並設定當前資料夾為起始位置
btn3 = QPushButton("選擇文件夾")
btn3.clicked.connect(lambda:print(QFileDialog.getExistingDirectory(self,"(標題)選擇文件夾",".")))
3. getSaveFileName
-
getSaveFileName
: 打開一個對話框,讓使用者選擇要儲存文件的位置和名稱,並返回存檔的文件路徑和文件類型。使用方法為 getSaveFileName(self, "標題", "文件對話框的起始路徑", "允許保存的文件類型")
。
# 創建一個按鈕,並設定當前資料夾為起始位置,只能保存.py檔和音頻文件mp3、mp4
btn4 = QPushButton("保存文件")
btn4.clicked.connect(lambda:print(QFileDialog.getSaveFileName(self,"(標題)保存文件",".","所有文件(*.py);;音頻文件(*.mp3 *.mp4)")))
總結
- 學會使用 QFileDialog 常用的指令,並知道了使用後的返回值。